package com.fysports.web.module.view.vo;

import com.jfinal.core.Controller;
import com.fysports.framework.kit.sql.Conditions;

import java.util.Map;


/**
 * 条件查询常用的VO基类
 * Created by konbluesky
 * Date : 14-9-16 下午9:40
 * Project : JdmData_WebServer
 */
public abstract class AbstractBaseWebVO implements IBaseVO {
    /**
     * 初始化页面接收过来的参数
     *
     * @param ctr
     */
    public abstract void initParamsReq(Controller ctr);

    /**
     * 获取查询条件Conditions对象
     *
     * @return
     */
    public abstract Conditions getConditions();

    /**
     * 获取Map查询条件对象
     *
     * @return
     */
    public abstract Map<String, Object> getParamsMap();

    /**
     * 一些查询界面需要回显数据，实现此方法
     */
    public abstract void setQueryData(Controller ctr);

    /**
     * table用的分页参数
     * 格式依据：?a=1&b=2&c=3
     * 中文参数需要通过encode和decode方法加密解密
     *
     * @return
     */
    public abstract String toParams();
}